C#でPDFドキュメントを印刷する方法 | IronPRINT

C#でPDFファイルを印刷する方法

This article was translated from English: Does it need improvement?
Translated
View the article in English

IronPDFは、.NETアプリケーションの自動印刷ワークフローのために、プリンタ設定、解像度(DPI)、ドキュメント処理を正確に制御し、C#開発者が単一のメソッド呼び出しで物理的なプリンタに直接PDFファイルをプログラム印刷することを可能にします。

.

<!コードの概念を示す図またはスクリーンショット -->

.NET C#コードからプリンタにPDFを送信することで、印刷プロセスを自動化し、印刷機能をアプリケーションに統合し、手作業を減らし、文書作成の一貫性を確保することができます。 印刷プロセスに対して正確なコントロールを提供します。 この機能は、請求書報告書、またはユーザーの介入なしに物理的なコピーを必要とする文書を生成するアプリケーションにとって不可欠です。

IronPDFは1つのメソッド呼び出しで物理的なプリンタにプログラムで印刷するオプションを提供し、複数のPDFファイルを印刷することができます。 プリンタの解像度は、設定可能な水平および垂直DPIで指定することもできます。 PDF印刷プロセスをさらに制御するためにMicrosoft PrinterSettingsおよびPrintControllerを受け入れるメソッドを使用します。 印刷に入る前に、あなたの.NETプロジェクトにIronPDFが正しくインストールされていることを確認してください。

クイックスタート: .NETでIronPDFを使用してPDFを印刷

IronPDFを使ってPDF文書をわずか数行のコードで簡単に印刷できます。 このガイドでは、PDF印刷を.NETアプリケーションにすばやく統合する方法を紹介します。 IronPdfを使えば、最小限のセットアップで、柔軟な設定高品質な出力を楽しみながら、ファイルを直接プリンターに送ることができます。 今すぐ始めて、ドキュメントワークフローを簡素化しましょう。 より高度な印刷シナリオについては、包括的な紙印刷PDFガイドをご覧ください。

Nuget Icon今すぐ NuGet で PDF を作成してみましょう:

  1. NuGet パッケージ マネージャーを使用して IronPDF をインストールします

    PM > Install-Package IronPdf

  2. このコード スニペットをコピーして実行します。

    IronPdf.PdfDocument.FromFile("example.pdf").Print();
  3. 実際の環境でテストするためにデプロイする

    今すぐ無料トライアルでプロジェクトに IronPDF を使い始めましょう
    arrow pointer


IronPDFを使ってPDFファイルを印刷するには?

PrintメソッドはPdfDocumentオブジェクトを通じて提供され、新しく作成されたPDFファイルと既存のPDFファイルの両方を印刷できます。 デフォルトでは、メソッドはシステムのデフォルトプリンターを使用しますが、Printメソッドにプリンター名を文字列として渡すことで別のプリンターを指定できます。 この柔軟性により、ドキュメントを動的に生成する場合でも、既存のPDFを扱う場合でも、PDF印刷を既存のワークフローに簡単に統合できます。

すべての印刷機能はWindowsでのみサポートされています。

どのプリンタをターゲットにできますか?

IronPDFはネットワークプリンター、"Microsoft Print to PDF "のような仮想プリンター、USBやネットワーク経由で接続された物理プリンターを含む、Windowsシステムにインストールされたすべてのプリンターへの印刷をサポートします。 ネットワーク プリンタへの印刷については、ネットワーク プリンタ トラブルシューティング ガイドで設定のヒントを確認してください。

:path=/static-assets/pdf/content-code-examples/how-to/print-pdf-print.cs
using IronPdf;

ChromePdfRenderer renderer = new ChromePdfRenderer();

PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Test printing</h1>");

// Send the document to "Microsoft Print to PDF" printer
pdf.Print("Microsoft Print to PDF");
$vbLabelText   $csharpLabel

PDFを印刷に送るとどうなりますか?

Printメソッドを呼び出すと、IronPDFはPDFドキュメントをWindowsのプリントスプーラに送信します。 ドキュメントは、ファイル名、サイズ、ステータスなどの詳細とともに印刷キューに表示されます。 その後、印刷スプーラは、プリンタの機能と現在のキューの位置に応じてドキュメントを処理します。

Windows Print Queue showing Microsoft Print to PDF with document in queue, display job status and file details

印刷品質と解像度を制御するにはどうすればよいですか?

.

<!コードの概念を示す図またはスクリーンショット -->

印刷されるPDFの解像度は、Printメソッドに希望のDPI値を与えることで指定することができます。 異なるDPI値を使用するには、メソッドに2つのパラメータを渡します。1つ目は水平 (x) DPI用で、2つ目は垂直 (y) DPI用です。 DPI値が高いほど高品質な印刷ができますが、ファイルサイズが大きくなり、処理時間が長くなります。

DPI設定はいつ調整すべきですか?

異なる印刷シナリオには、異なるDPI設定が必要です。 標準的なオフィス文書であれば、150~300DPIで十分な品質が得られます。 高品質のグラフィックや写真を使用する場合は、600DPI以上を使用してください。 ドラフト印刷では、時間とリソースを節約するために72-150 DPIを使用することができます。 デジタル表示専用のPDFを作成する場合は、PDF圧縮ガイドを参照して、ファイルサイズを最適化してください。

:path=/static-assets/pdf/content-code-examples/how-to/print-pdf-dpi.cs
using IronPdf;

ChromePdfRenderer renderer = new ChromePdfRenderer();

PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Test printing</h1>");

// Set custom DPI
pdf.Print(300);

// Specify printing resolution
pdf.Print(10, 10, "Microsoft Print to PDF");
$vbLabelText   $csharpLabel

さまざまな印刷タイプに最適なDPI値は?

次の例でPDFファイルをラスタライズして印刷する方法を見てみましょう。 DPIの選択は、特定のニーズによって異なります:

  • テキスト文書: 300 DPIは、鮮明で読みやすいテキストを提供します。

  • 混合コンテンツ(テキストと画像): 300-400 DPIで品質とファイルサイズのバランスをとる。

  • 高画質写真: 600 DPI以上で、画像の細部を保持すること。

  • ドラフトプリント: クイックレビューコピー用150DPI

  • アーカイブ品質: 長期保存のための1200DPI

物理的に印刷せずに PDF を保存するにはどうすればよいですか?

PrintToFileメソッドはPDFドキュメントを効率的にラスタライズし、ビットマップ(ピクセルベース)の画像に変換してPDFファイルとして保存します。このプロセスは"Microsoft Print to PDF"のようなWindows内蔵のプリンターによって処理されます。このメソッドは物理プリンターに送ることなくPDFをディスクに保存することが注目されます。 PDFを保存するその他の方法については、PDFのエクスポートと保存に関する総合ガイドをご覧ください。

なぜ通常の保存の代わりにPrintToFileを使用するのですか

PrintToFileは、物理的な出力なしで印刷プロセスをシミュレートする必要がある場合に、独自の利点を提供します。 印刷用ファイルの作成、印刷レイアウトのテスト、または紙に印刷されるものと正確に一致する文書の生成に特に役立ちます。 この方法は、PDFを特定の形式に変換したり、プリンタ固有の変換を適用したりする必要がある場合にも役立ちます。

:path=/static-assets/pdf/content-code-examples/how-to/print-pdf-print-to-file.cs
using IronPdf;

ChromePdfRenderer renderer = new ChromePdfRenderer();

PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Test printing</h1>");

// Print to file
pdf.PrintToFile("");
$vbLabelText   $csharpLabel

ラスタライズの利点は何ですか?

PrintToFileによるラスタライズには、いくつかの利点があります:

  • 一貫した外観:異なるビューアでPDFが同じように見えるようにします。

  • フォント埋め込み:テキストを画像に変換し、フォントの互換性の問題を解消します。

  • セキュリティ:テキストを選択不可能にし、抽出しにくくする。

  • 印刷プレビュー: ドキュメントが印刷されたときにどのように表示されるかを正確に表示します。

  • ファイルサイズの最適化: 複雑なベクターグラフィックスのファイルサイズを縮小できます。

ディスクに保存せずにメモリ上でPDFを扱う方法については、PDF to MemoryStreamガイドをご覧ください。


プリンタの詳細設定にアクセスするにはどうすればよいですか?

印刷オプションをカスタマイズするには、Microsoft PrinterSettingsおよびPrintControllerオブジェクトを受け入れるGetPrintDocumentメソッドを使用します。 このメソッドは現在の印刷ドキュメントオブジェクトを返します。 PrinterSettingsはページ範囲やプリンター選択などのオプションを設定することができ、PrintControllerは例外処理、進捗報告、印刷ダイアログ、印刷プレビューなどの印刷プロセスを制御することを可能にします。 PrinterSettingsオプションの詳細な説明はコード例の下に記載されています。 カスタム用紙サイズについては、カスタム用紙サイズガイドを参照してください。

どの設定を構成できますか?

:path=/static-assets/pdf/content-code-examples/how-to/print-pdf-printer-setting.cs
using IronPdf;
using System.Drawing.Printing;

ChromePdfRenderer renderer = new ChromePdfRenderer();

PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Testing</h1>");

PrinterSettings settings = new PrinterSettings() {
    PrinterName = "Microsoft Print to PDF",

    // Number of Copy
    Copies = 2,

    // Page range to print
    FromPage = 2,
    ToPage = 4,
};

PrintDocument document = pdf.GetPrintDocument(settings);

// Print
document.Print();
$vbLabelText   $csharpLabel

各 PrinterSettings プロパティは何を制御しますか?

PrinterSettings プロパティを理解することは、印刷ワークフローの微調整に役立ちます:

  • CanDuplex:プリンターが両面印刷をサポートしているかどうかを示します。 trueの場合、両面印刷が可能です; さもなければできません。

  • 照合: 印刷時に複数のPDFファイルまたはPDF文書のコピーを照合(順番に整理)するかどうかを指定します。 trueの場合、プリンタはコピーを照合します; falseの場合は、そうではありません。

  • 部数: 印刷するPDF文書の部数を設定します。 これにより印刷される文書の同一コピーの数が決定されます。

  • DefaultPageSettings:用紙サイズ、余白、向きなど、プリンタのデフォルトのページ設定を表します。 これは、PDFをさまざまな用紙形式で正しく印刷するために非常に重要です。

  • 両面:使用する両面印刷モードを指定します。 オプションには、Duplex.DefaultDuplex.Simplex(片面)、Duplex.HorizontalDuplex.Verticalがあります。

  • InstalledPrinters:システムにインストールされているプリンタ名のコレクションを提供します。 利用可能なプリンターの名前を取得するためにこのコレクションを通過することができます。

  • IsDefaultPrinter:PrinterNameで指定されたプリンタがシステムのデフォルトプリンタとして設定されているかどうかを示します。

  • IsPlotter:プリンタがプロッタかどうかを判断します。 プロッタープリンターは大判印刷に使用されることが多く、建築やエンジニアリングの図面に使用されます。

  • IsValid:プリンタの設定が有効で、PDFファイルの印刷に使用できるかどうかを示します。

  • LandscapeAngle:プリンタの横向きの角度(回転)を指定します。

  • MaximumCopies:PDFの印刷に指定できる最大部数を表します。

  • MaximumPage:印刷または変換のために設定できる最大ページ数を指定します。

  • MinimumPage:印刷または変換のために設定できる最小ページ数を指定します。

  • PaperSizes:プリンタでサポートされる用紙サイズのコレクションを提供します。 利用可能な用紙サイズを確認するためにこのコレクションを照会できます。

  • PaperSources:プリンタで使用可能なペーパーソースまたはトレイのコレクションを提供します。 PDFファイルを印刷するときの用紙ソースを選択する際に便利です。

  • PrinterName:印刷または変換に使用するプリンタの名前を指定します。

  • PrinterResolutions:利用可能なプリンタ解像度のコレクションを提供し、印刷品質を選択できるようにします。

  • PrintFileName:PrintToFileを使用してファイルに印刷するときにファイル名を取得または設定します。

  • PrintRange:すべてのページ、特定の範囲、選択範囲など、印刷するPDFページの範囲を指定します。 特定のページを印刷するために使用します。

  • FromPage:印刷または変換の開始ページ番号を指定します。 このページから印刷が開始されます。

  • ToPage:印刷または変換のための終了ページ番号を指定します。 このページに達した後、印刷が停止します。

  • PrintToFile:物理的なプリンタの代わりにファイルに印刷するかどうかを示します。 trueの場合、PrintFileNameを使用してファイルパスを指定できます。

  • SupportsColor:プリンタがカラー印刷をサポートしているかどうかを示します。 trueの場合、カラー印刷がサポートされます; さもなければ、モノクロ印刷(白黒印刷)に限定されます。

デフォルトのプリンターを設定するには?

最後に、PDFを印刷するためにデフォルトのプリンタを設定するには、マシン設定の"プリンタとスキャナ"セクションに移動します。 Windows 10および11では、設定 > デバイス > プリンターとスキャナーに移動し、希望のプリンターの横にある"管理"をクリックし、"デフォルトとして設定"を選択します。 印刷前にゼロからPDFを作成するには、完全なPDF作成チュートリアルをご覧ください。

よくある質問

C# .NETでPDFファイルをプログラムで印刷するには?

IronPDFを使えば、Print()メソッドを呼び出すだけで、プログラムでPDFファイルを印刷することができます。IronPdf.PdfDocument.FromFile("example.pdf").Print()でPDFファイルを読み込むだけで、デフォルトのプリンタにPDFファイルを送ることができます。

PDFを印刷する際、プリンタ設定はどのように制御できますか?

IronPDFは解像度(DPI)を含むプリンター設定を水平、垂直の両方で正確にコントロールすることができます。MicrosoftのPrinterSettingsやPrintControllerを受け入れるメソッドを使用することで、PDFの印刷プロセスを高度に制御することができます。

デフォルトのプリンタではなく、特定のプリンタに印刷できますか?

はい、IronPDFではPrintメソッドに文字列としてプリンタ名を渡すことで、別のプリンタを指定することができます。デフォルトではシステムのデフォルトプリンターを使用しますが、システム上の利用可能なプリンターを簡単にターゲットにすることができます。

複数のPDFファイルを自動的に印刷することは可能ですか?

はい、IronPdfはプログラムで複数のPDFファイルを印刷することをサポートしており、バッチ処理や自動化されたワークフローに最適です。これは特に、請求書やレポート、あるいは物理的なコピーを必要とするドキュメントをユーザーの介入なしに生成するアプリケーションに有用です。

PDF印刷に対応しているプラットフォームは?

IronPDFは.NETアプリケーションに重点を置いていますが、Iron SoftwareはIronPrintも提供しています。IronPrintはWindows、macOS、Android、iOSの各プラットフォームと互換性を持ち、より幅広い印刷機能を提供する印刷専用ライブラリです。

.NETプロジェクトでPDF印刷を始めるには?

まず.NETプロジェクトにIronPdfをインストールし、PdfDocument.FromFile()を使ってPDFファイルを読み込み、Print()メソッドを呼び出すというシンプルなワークフローを使用します。高度な設定のためには、GetPrintDocumentメソッドを使用してより多くの印刷オプションにアクセスしてください。

カーティス・チャウ
テクニカルライター

Curtis Chauは、カールトン大学でコンピュータサイエンスの学士号を取得し、Node.js、TypeScript、JavaScript、およびReactに精通したフロントエンド開発を専門としています。直感的で美しいユーザーインターフェースを作成することに情熱を持ち、Curtisは現代のフレームワークを用いた開発や、構造の良い視覚的に魅力的なマニュアルの作成を楽しんでいます。

開発以外にも、CurtisはIoT(Internet of Things)への強い関心を持ち、ハードウェアとソフトウェアの統合方法を模索しています。余暇には、ゲームをしたりDiscordボットを作成したりして、技術に対する愛情と創造性を組み合わせています。

レビュー済み
Jeff Fritz
Jeffrey T. Fritz
プリンシパルプログラムマネージャー - .NETコミュニティチーム
Jeffはまた、.NETとVisual Studioチームのプリンシパルプログラムマネージャーです。彼は.NET Conf仮想会議シリーズのエグゼクティブプロデューサーであり、週に二回放送される開発者向けライブストリーム『Fritz and Friends』のホストを務め、テクノロジーについて話すことや視聴者と一緒にコードを書くことをしています。Jeffはワークショップ、プレゼンテーション、およびMicrosoft Build、Microsoft Ignite、.NET Conf、Microsoft MVPサミットを含む最大のMicrosoft開発者イベントのコンテンツを企画しています。
準備はできましたか?
Nuget ダウンロード 17,570,948 | バージョン: 2026.2 リリース